package cn.com.dmg.myspringboot.file.word;

import com.aspose.words.Cell;
import com.aspose.words.Document;
import com.aspose.words.Paragraph;
import com.aspose.words.Row;
import com.aspose.words.Section;
import com.aspose.words.Table;

/**
 * @description: 获取word里的内容
 * @author: libai
 * @create: 2024-04-09 14:47
 */
public class WordContentUtil {
    public static void main(String[] args) {
        // 指定Word文档的路径
        String docPath = "D:\\opt\\shth\\alcertificatemode\\f7a3b7cd1ba948c594383d0e9ba65a76.docx";
        wordContent(docPath);

    }

    /**
     * 获取word里的内容
     * @param docPath word地址
     */
   public static void wordContent(String docPath){
       try {
           // 加载文档
           Document doc = new Document(docPath);

           // 获取文档的第一个节（通常Word文档只有一个节）
           Section section = doc.getFirstSection();

           // 遍历节中的所有段落并打印内容
           for (Paragraph para : section.getBody().getParagraphs()) {
               System.out.println(para.getText());
           }

           // 如果文档中有表格，也可以遍历表格并提取内容
           for (Table table : section.getBody().getTables()) {
               for (Row row : table.getRows()) {
                   for (Cell cell : row.getCells()) {
                       System.out.println(cell.getText());
                   }
               }
           }

           // ... 可以继续添加其他内容的提取逻辑，如提取列表、脚注等 ...

       } catch (Exception e) {
           e.printStackTrace();
       }
   }
}
